package com.parking.order.model;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.time.LocalDateTime;

import lombok.Getter;
import lombok.Setter;
import lombok.experimental.Accessors;

/**
 * <p>
 * 
 * </p>
 *
 * @author 吴彦祖
 * @since 2023年11月28日
 */
@Getter
@Setter
@Accessors(chain = true)
@TableName("order_comment")
public class OrderComment implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 订单评论Id
     */
    @TableId(value = "comment_id", type = IdType.AUTO)
    private Integer commentId;

    /**
     * 订单信息id
     */
    @TableField("order_info_id")
    private Integer orderInfoId;

    /**
     * 用户Id
     */
    @TableField("user_info_id")
    private Integer userInfoId;

    /**
     * 评论内容
     */
    @TableField("comment_info")
    private String commentInfo;

    /**
     * 评论时间
     */
    @TableField("comment_time")
    private LocalDateTime commentTime;

    /**
     * 回复人Id = certifiedInfoId
     */
    @TableField("reply_id")
    private Integer replyId;

    /**
     * 回复内容
     */
    @TableField("reply_info")
    private String replyInfo;

    /**
     * 回复时间
     */
    @TableField("reply_time")
    private LocalDateTime replyTime;

    /**
     * 订单编号
     */
    @TableField("order_info_num")
    private String orderInfoNum;

    /**
     * 订单评分 0差评=1分 1中评=3分 2好评=5分
     */
    @TableField("comment_score")
    private Integer commentScore;

    /**
     * 无参构造函数
     * */
    public OrderComment() {
    }

    /**
     * 构造函数
     * orderInfoId 订单Id
     * userInfoId 用户信息Id
     * commentInfo 评论内容
     * commentTime 评论时间
     * replyId     回复人Id = certifiedId
     * orderInfoNum 订单编号
     * */
    public OrderComment(Integer orderInfoId, Integer userInfoId, String commentInfo, LocalDateTime commentTime, Integer replyId, String orderInfoNum) {
        this.orderInfoId = orderInfoId;
        this.userInfoId = userInfoId;
        this.commentInfo = commentInfo;
        this.commentTime = commentTime;
        this.replyId = replyId;
        this.orderInfoNum = orderInfoNum;
    }

    /**
     * 构造函数
     * orderInfoId 订单Id
     * userInfoId 用户信息Id
     * commentInfo 评论内容
     * commentTime 评论时间
     * replyId     回复人Id = certifiedId
     * orderInfoNum 订单编号
     * commentScore 评论分数
     * */
    public OrderComment(Integer orderInfoId, Integer userInfoId, String commentInfo, LocalDateTime commentTime, Integer replyId, String orderInfoNum, Integer commentScore) {
        this.orderInfoId = orderInfoId;
        this.userInfoId = userInfoId;
        this.commentInfo = commentInfo;
        this.commentTime = commentTime;
        this.replyId = replyId;
        this.orderInfoNum = orderInfoNum;
        this.commentScore = commentScore;
    }
}
